TSTP Solution File: ALG285^5 by cocATP---0.2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : ALG285^5 : TPTP v6.1.0. Released v4.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p

% Computer : n112.star.cs.uiowa.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2609 0 2.40GHz
% Memory   : 32286.75MB
% OS       : Linux 2.6.32-431.20.3.el6.x86_64
% CPULimit : 300s
% DateTime : Thu Jul 17 13:18:23 EDT 2014

% Result   : Timeout 300.10s
% Output   : None 
% Verified : 
% SZS Type : None (Parsing solution fails)
% Syntax   : Number of formulae    : 0

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : ALG285^5 : TPTP v6.1.0. Released v4.0.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n112.star.cs.uiowa.edu
% % Model    : x86_64 x86_64
% % CPU      : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% % Memory   : 32286.75MB
% % OS       : Linux 2.6.32-431.20.3.el6.x86_64
% % CPULimit : 300
% % DateTime : Thu Jul 17 09:08:06 CDT 2014
% % CPUTime  : 300.10 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (<kernel.Constant object at 0xfce878>, <kernel.Type object at 0xfcecf8>) of role type named a_type
% Using role type
% Declaring a:Type
% FOF formula (<kernel.Constant object at 0x11cc710>, <kernel.DependentProduct object at 0xfceab8>) of role type named cP
% Using role type
% Declaring cP:(a->(a->a))
% FOF formula (<kernel.Constant object at 0xfcec68>, <kernel.Constant object at 0xfceab8>) of role type named cE
% Using role type
% Declaring cE:a
% FOF formula (<kernel.Constant object at 0xfce878>, <kernel.DependentProduct object at 0xfceb00>) of role type named cJ
% Using role type
% Declaring cJ:(a->a)
% FOF formula (((and ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))->((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))) of role conjecture named cTHM22_pme
% Conjecture to prove = (((and ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))->((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))):Prop
% We need to prove ['(((and ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))->((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))))']
% Parameter a:Type.
% Parameter cP:(a->(a->a)).
% Parameter cE:a.
% Parameter cJ:(a->a).
% Trying to prove (((and ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))->((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))))
% Found x2:(forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found x2 as proof of (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found x2000:=(x200 Xz):(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (x200 Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((x20 Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((x2 Xx) Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))))
% Found (and_rect10 (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((and_rect1 (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((fun (P:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xz:a)=> (((fun (P:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xy:a) (Xz:a)=> (((fun (P:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (forall (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (forall (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found eq_ref000:=(eq_ref00 P):((P ((cP ((cP Xx) Xy)) Xz))->(P ((cP ((cP Xx) Xy)) Xz)))
% Found (eq_ref00 P) as proof of (P0 ((cP ((cP Xx) Xy)) Xz))
% Found ((eq_ref0 ((cP ((cP Xx) Xy)) Xz)) P) as proof of (P0 ((cP ((cP Xx) Xy)) Xz))
% Found (((eq_ref a) ((cP ((cP Xx) Xy)) Xz)) P) as proof of (P0 ((cP ((cP Xx) Xy)) Xz))
% Found (((eq_ref a) ((cP ((cP Xx) Xy)) Xz)) P) as proof of (P0 ((cP ((cP Xx) Xy)) Xz))
% Found eq_ref00:=(eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))):(((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found eq_ref00:=(eq_ref0 ((cP ((cP Xx) Xy)) Xz)):(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP ((cP Xx) Xy)) Xz))
% Found (eq_ref0 ((cP ((cP Xx) Xy)) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) b)
% Found ((eq_ref a) ((cP ((cP Xx) Xy)) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) b)
% Found ((eq_ref a) ((cP ((cP Xx) Xy)) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) b)
% Found ((eq_ref a) ((cP ((cP Xx) Xy)) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) ((cP Xx) ((cP Xy) Xz)))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP Xx) ((cP Xy) Xz)))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP Xx) ((cP Xy) Xz)))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP Xx) ((cP Xy) Xz)))
% Found x2000:=(x200 Xz):(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (x200 Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((x20 Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((x2 Xx) Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))))
% Found (and_rect10 (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((and_rect1 (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of ((forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))->((forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))))
% Found (and_rect00 (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((and_rect0 (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((fun (P:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xz:a)=> (((fun (P:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xy:a) (Xz:a)=> (((fun (P:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (forall (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (forall (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))
% Instantiate: b:=(forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)):Prop
% Found x0 as proof of (P b)
% Found eq_ref00:=(eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))):(((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))
% Instantiate: b:=(forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)):Prop
% Found (fun (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0) as proof of (P b)
% Found (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0) as proof of ((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->(P b))
% Found (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0) as proof of (((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->(P b)))
% Found (and_rect00 (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P b)
% Found ((and_rect0 (P b)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P b)
% Found (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (P b)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P b)
% Found (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (P b)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P b)
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))
% Instantiate: b:=(forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)):Prop
% Found x0 as proof of (P b)
% Found eq_ref00:=(eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))):(((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq (a->Prop)) a0) (fun (x:a)=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eta_expansion0 Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eta_expansion000:=(eta_expansion00 a0):(((eq (a->Prop)) a0) (fun (x:a)=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eta_expansion0 Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of b
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found x2:(forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found x2 as proof of (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found eq_ref00:=(eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))):(((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found (eq_ref0 ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found ((eq_ref Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) as proof of (((eq Prop) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))) b)
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eta_expansion000:=(eta_expansion00 a0):(((eq (a->Prop)) a0) (fun (x:a)=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eta_expansion0 Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion a) Prop) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion_dep00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion_dep0 (fun (x1:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x1:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x1:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x1:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (x:a)=> (((eq a) ((cP x) X)) Y)))
% Found (eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% Instantiate: b:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% Found eq_substitution as proof of b
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq (a->Prop)) a0) (fun (x:a)=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eta_expansion_dep0 (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eq_ref00:=(eq_ref0 a0):(((eq (a->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eq_ref (a->Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq (a->Prop)) a0) (fun (x:a)=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eta_expansion_dep0 (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq (a->Prop)) a0) (fun (x:a)=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eta_expansion_dep0 (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq (a->Prop)) a0) (fun (x:a)=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found ((eta_expansion_dep0 (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) a0) as proof of (((eq (a->Prop)) a0) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (((and A) B)->A)):Prop
% Found proj1 as proof of b
% Found proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (((and A) B)->A)):Prop
% Found proj1 as proof of b
% Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% Instantiate: b:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% Found eq_substitution as proof of b
% Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% Instantiate: b:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% Found eq_substitution as proof of b
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq a) ((cP x0) X)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq a) ((cP X) x0)) Y))
% Found (fun (x0:a)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% Instantiate: b:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% Found eq_substitution as proof of b
% Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% Instantiate: b:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% Found eq_substitution as proof of b
% Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% Instantiate: b:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% Found eq_substitution as proof of b
% Found eta_expansion000:=(eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (x:a)=> (((eq a) ((cP x) X)) Y)))
% Found (eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eq_ref00:=(eq_ref0 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))
% Found (eq_ref0 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (x:a)=> (((eq a) ((cP x) X)) Y)))
% Found (eta_expansion_dep00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eta_expansion_dep0 (fun (x3:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x3:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x3:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x3:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found x2000:=(x200 Xz):(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (x200 Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((x20 Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((x2 Xx) Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))))
% Found (and_rect10 (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((and_rect1 (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xz:a)=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xy:a) (Xz:a)=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (forall (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (forall (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x0))->(P ((cP X) x0)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x0))
% Found ((eq_ref0 ((cP X) x0)) P) as proof of (P0 ((cP X) x0))
% Found (((eq_ref a) ((cP X) x0)) P) as proof of (P0 ((cP X) x0))
% Found (((eq_ref a) ((cP X) x0)) P) as proof of (P0 ((cP X) x0))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x0) X))->(P ((cP x0) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x0) X))
% Found ((eq_ref0 ((cP x0) X)) P) as proof of (P0 ((cP x0) X))
% Found (((eq_ref a) ((cP x0) X)) P) as proof of (P0 ((cP x0) X))
% Found (((eq_ref a) ((cP x0) X)) P) as proof of (P0 ((cP x0) X))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 ((cP X) x0)):(((eq a) ((cP X) x0)) ((cP X) x0))
% Found (eq_ref0 ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found ((eq_ref a) ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found ((eq_ref a) ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found ((eq_ref a) ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x0) X)):(((eq a) ((cP x0) X)) ((cP x0) X))
% Found (eq_ref0 ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found ((eq_ref a) ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found ((eq_ref a) ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found ((eq_ref a) ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (x:a)=> (((eq a) ((cP x) X)) Y)))
% Found (eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eq_ref00:=(eq_ref0 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))
% Found (eq_ref0 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eq_ref00:=(eq_ref0 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))
% Found (eq_ref0 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (x:a)=> (((eq a) ((cP x) X)) Y)))
% Found (eta_expansion_dep00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eta_expansion_dep0 (fun (x5:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eq_ref00:=(eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found x2000:=(x200 Xz):(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (x200 Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((x20 Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((x2 Xx) Xy) Xz) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)) as proof of ((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))))
% Found (and_rect10 (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((and_rect1 (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of ((forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))) as proof of (((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))->((forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE))->(((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))))
% Found (and_rect00 (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found ((and_rect0 (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xz:a)=> (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))
% Found (fun (Xy:a) (Xz:a)=> (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (forall (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (forall (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found (fun (Xx:a) (Xy:a) (Xz:a)=> (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x0:((and (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))) (x1:(forall (Xy0:a), (((eq a) ((cP (cJ Xy0)) Xy0)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))->((forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))->P0)))=> (((((and_rect (forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0))) P0) x2) x0)) (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz)))) (fun (x2:(forall (Xx0:a) (Xy0:a) (Xz0:a), (((eq a) ((cP ((cP Xx0) Xy0)) Xz0)) ((cP Xx0) ((cP Xy0) Xz0))))) (x3:(forall (Xx0:a), (((eq a) ((cP cE) Xx0)) Xx0)))=> (((x2 Xx) Xy) Xz)))))) as proof of (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found eq_ref00:=(eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (x:a)=> (((eq a) ((cP x) X)) Y)))
% Found (eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eq_ref000:=(eq_ref00 P):((P ((cP x2) X))->(P ((cP x2) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x2) X))
% Found ((eq_ref0 ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x2))->(P ((cP X) x2)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x2))
% Found ((eq_ref0 ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))
% Instantiate: a0:=(forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)):Prop
% Found (fun (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0) as proof of (P a0)
% Found (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0) as proof of ((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->(P a0))
% Found (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0) as proof of (((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->(P a0)))
% Found (and_rect00 (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P a0)
% Found ((and_rect0 (P a0)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P a0)
% Found (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (P a0)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P a0)
% Found (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (P a0)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> x0)) as proof of (P a0)
% Found eq_ref00:=(eq_ref0 ((cP X) x2)):(((eq a) ((cP X) x2)) ((cP X) x2))
% Found (eq_ref0 ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x2) X)):(((eq a) ((cP x2) X)) ((cP x2) X))
% Found (eq_ref0 ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x2))->(P ((cP X) x2)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x2))
% Found ((eq_ref0 ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x2) X))->(P ((cP x2) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x2) X))
% Found ((eq_ref0 ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))
% Instantiate: a0:=(forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)):Prop
% Found x0 as proof of (P a0)
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP X) x2)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq a) ((cP x2) X)) Y))
% Found (fun (x2:a)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 ((cP x2) X)):(((eq a) ((cP x2) X)) ((cP x2) X))
% Found (eq_ref0 ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP X) x2)):(((eq a) ((cP X) x2)) ((cP X) x2))
% Found (eq_ref0 ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eta_expansion000:=(eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (x:a)=> (((eq a) ((cP x) X)) Y)))
% Found (eta_expansion00 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eq_ref00:=(eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion0 Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion a) Prop) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found conj00:=(conj0 (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))):((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))))
% Found (conj0 (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) as proof of ((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->(P a0)))
% Found ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) as proof of ((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->(P a0)))
% Found ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) as proof of ((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->(P a0)))
% Found ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) as proof of ((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->(P a0)))
% Found (and_rect10 ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) as proof of (P a0)
% Found ((and_rect1 (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) as proof of (P a0)
% Found (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) as proof of (P a0)
% Found (fun (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))))) as proof of (P a0)
% Found (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))))) as proof of ((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->(P a0))
% Found (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))))) as proof of (((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->(P a0)))
% Found (and_rect00 (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))))) as proof of (P a0)
% Found ((and_rect0 (P a0)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))))) as proof of (P a0)
% Found (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (P a0)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))))) as proof of (P a0)
% Found (((fun (P0:Type) (x0:(((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))->((forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))->P0)))=> (((((and_rect ((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE))) P0) x0) x)) (P a0)) (fun (x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))) (x1:(forall (Xy:a), (((eq a) ((cP (cJ Xy)) Xy)) cE)))=> (((fun (P0:Type) (x2:((forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))->((forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx))) P0) x2) x0)) (P a0)) ((conj (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))))) as proof of (P a0)
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found x0:((and (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))) (forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)))
% Instantiate: a0:=(forall (Xx:a), (((eq a) ((cP cE) Xx)) Xx)):Prop
% Found x0 as proof of (P a0)
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% Instantiate: a0:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% Found eta_expansion as proof of a0
% Found eq_ref000:=(eq_ref00 P0):((P0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))->(P0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))))
% Found (eq_ref00 P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) ((cP x0) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x0) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x0) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x0) X))
% Found eq_ref00:=(eq_ref0 Y):(((eq a) Y) Y)
% Found (eq_ref0 Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) ((cP X) x0))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x0))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x0))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x0))
% Found eq_ref00:=(eq_ref0 Y):(((eq a) Y) Y)
% Found (eq_ref0 Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found eq_ref000:=(eq_ref00 P):((P ((cP x4) X))->(P ((cP x4) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x4) X))
% Found ((eq_ref0 ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x4))->(P ((cP X) x4)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x4))
% Found ((eq_ref0 ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x2))->(P ((cP X) x2)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x2))
% Found ((eq_ref0 ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x2) X))->(P ((cP x2) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x2) X))
% Found ((eq_ref0 ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found eq_ref00:=(eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))):(((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq Prop) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found eq_ref00:=(eq_ref0 ((cP X) x4)):(((eq a) ((cP X) x4)) ((cP X) x4))
% Found (eq_ref0 ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x4) X)):(((eq a) ((cP x4) X)) ((cP x4) X))
% Found (eq_ref0 ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of b
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x4))->(P ((cP X) x4)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x4))
% Found ((eq_ref0 ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x4) X))->(P ((cP x4) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x4) X))
% Found ((eq_ref0 ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x4) X))->(P ((cP x4) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x4) X))
% Found ((eq_ref0 ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x4))->(P ((cP X) x4)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x4))
% Found ((eq_ref0 ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x4))->(P ((cP X) x4)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x4))
% Found ((eq_ref0 ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x4) X))->(P ((cP x4) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x4) X))
% Found ((eq_ref0 ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x4))->(P ((cP X) x4)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x4))
% Found ((eq_ref0 ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x4) X))->(P ((cP x4) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x4) X))
% Found ((eq_ref0 ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))):(((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) (fun (x:a)=> (((eq a) ((cP X) x)) Y)))
% Found (eta_expansion_dep00 (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found ((eta_expansion_dep0 (fun (x5:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found (((eta_expansion_dep a) (fun (x5:a)=> Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) as proof of (((eq (a->Prop)) (fun (U:a)=> (((eq a) ((cP X) U)) Y))) b)
% Found eq_ref00:=(eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))):(((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))
% Found (eq_ref0 (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found ((eq_ref (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) as proof of (((eq (a->Prop)) (fun (V:a)=> (((eq a) ((cP V) X)) Y))) b)
% Found eq_ref000:=(eq_ref00 P):((P ((cP x0) X))->(P ((cP x0) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x0) X))
% Found ((eq_ref0 ((cP x0) X)) P) as proof of (P0 ((cP x0) X))
% Found (((eq_ref a) ((cP x0) X)) P) as proof of (P0 ((cP x0) X))
% Found (((eq_ref a) ((cP x0) X)) P) as proof of (P0 ((cP x0) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x0))->(P ((cP X) x0)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x0))
% Found ((eq_ref0 ((cP X) x0)) P) as proof of (P0 ((cP X) x0))
% Found (((eq_ref a) ((cP X) x0)) P) as proof of (P0 ((cP X) x0))
% Found (((eq_ref a) ((cP X) x0)) P) as proof of (P0 ((cP X) x0))
% Found eq_ref00:=(eq_ref0 ((cP X) x2)):(((eq a) ((cP X) x2)) ((cP X) x2))
% Found (eq_ref0 ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found ((eq_ref a) ((cP X) x2)) as proof of (((eq a) ((cP X) x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x2) X)):(((eq a) ((cP x2) X)) ((cP x2) X))
% Found (eq_ref0 ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found ((eq_ref a) ((cP x2) X)) as proof of (((eq a) ((cP x2) X)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP X) x4)):(((eq a) ((cP X) x4)) ((cP X) x4))
% Found (eq_ref0 ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x4) X)):(((eq a) ((cP x4) X)) ((cP x4) X))
% Found (eq_ref0 ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found eq_ref00:=(eq_ref0 ((cP X) x4)):(((eq a) ((cP X) x4)) ((cP X) x4))
% Found (eq_ref0 ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x4) X)):(((eq a) ((cP x4) X)) ((cP x4) X))
% Found (eq_ref0 ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found eq_ref00:=(eq_ref0 ((cP X) x4)):(((eq a) ((cP X) x4)) ((cP X) x4))
% Found (eq_ref0 ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP X) x4)):(((eq a) ((cP X) x4)) ((cP X) x4))
% Found (eq_ref0 ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x4) X)):(((eq a) ((cP x4) X)) ((cP x4) X))
% Found (eq_ref0 ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x4) X)):(((eq a) ((cP x4) X)) ((cP x4) X))
% Found (eq_ref0 ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found eq_ref00:=(eq_ref0 ((cP x0) X)):(((eq a) ((cP x0) X)) ((cP x0) X))
% Found (eq_ref0 ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found ((eq_ref a) ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found ((eq_ref a) ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found ((eq_ref a) ((cP x0) X)) as proof of (((eq a) ((cP x0) X)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP X) x0)):(((eq a) ((cP X) x0)) ((cP X) x0))
% Found (eq_ref0 ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found ((eq_ref a) ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found ((eq_ref a) ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found ((eq_ref a) ((cP X) x0)) as proof of (((eq a) ((cP X) x0)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% Instantiate: a0:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% Found classical_choice as proof of a0
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found eq_ref000:=(eq_ref00 P0):((P0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))->(P0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))))
% Found (eq_ref00 P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found x2:(forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found x2 as proof of (forall (Xx:a) (Xy:a) (Xz:a), (((eq a) ((cP ((cP Xx) Xy)) Xz)) ((cP Xx) ((cP Xy) Xz))))
% Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% Instantiate: a0:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% Found classical_choice as proof of a0
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found eq_ref00:=(eq_ref0 b0):(((eq Prop) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found eq_ref00:=(eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))):(((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) ((cP x2) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x2) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x2) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x2) X))
% Found eq_ref00:=(eq_ref0 Y):(((eq a) Y) Y)
% Found (eq_ref0 Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found eq_ref00:=(eq_ref0 Y):(((eq a) Y) Y)
% Found (eq_ref0 Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) ((cP X) x2))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x2))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x2))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x2))
% Found eq_ref00:=(eq_ref0 b0):(((eq Prop) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq Prop) b0) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP X) x4)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP X) x)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq a) ((cP x4) X)) Y))
% Found (fun (x4:a)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:a), (((eq Prop) (f x)) (((eq a) ((cP x) X)) Y)))
% Found eq_ref000:=(eq_ref00 P0):((P0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))->(P0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))))
% Found (eq_ref00 P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found ((eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) P0) as proof of (P1 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found eq_ref000:=(eq_ref00 P):((P ((cP x4) X))->(P ((cP x4) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x4) X))
% Found ((eq_ref0 ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x4))->(P ((cP X) x4)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x4))
% Found ((eq_ref0 ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x4))->(P ((cP X) x4)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x4))
% Found ((eq_ref0 ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found (((eq_ref a) ((cP X) x4)) P) as proof of (P0 ((cP X) x4))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x4) X))->(P ((cP x4) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x4) X))
% Found ((eq_ref0 ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found (((eq_ref a) ((cP x4) X)) P) as proof of (P0 ((cP x4) X))
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) ((cP X) x2))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x2))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x2))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP X) x2))
% Found eq_ref00:=(eq_ref0 Y):(((eq a) Y) Y)
% Found (eq_ref0 Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) ((cP x2) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x2) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x2) X))
% Found ((eq_ref a) b) as proof of (((eq a) b) ((cP x2) X))
% Found eq_ref00:=(eq_ref0 Y):(((eq a) Y) Y)
% Found (eq_ref0 Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found ((eq_ref a) Y) as proof of (((eq a) Y) b)
% Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% Instantiate: a0:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% Found classical_choice as proof of a0
% Found eq_ref00:=(eq_ref0 b0):(((eq Prop) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found eq_ref00:=(eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))):(((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))))
% Found (eq_ref0 (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found ((eq_ref Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) as proof of (((eq Prop) (forall (X:a) (Y:a), ((and ((ex a) (fun (U:a)=> (((eq a) ((cP X) U)) Y)))) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y)))))) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found eq_ref00:=(eq_ref0 ((cP X) x4)):(((eq a) ((cP X) x4)) ((cP X) x4))
% Found (eq_ref0 ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP X) x4)):(((eq a) ((cP X) x4)) ((cP X) x4))
% Found (eq_ref0 ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found ((eq_ref a) ((cP X) x4)) as proof of (((eq a) ((cP X) x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x4) X)):(((eq a) ((cP x4) X)) ((cP x4) X))
% Found (eq_ref0 ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found ((eq_ref a) b) as proof of (((eq a) b) Y)
% Found eq_ref00:=(eq_ref0 ((cP x4) X)):(((eq a) ((cP x4) X)) ((cP x4) X))
% Found (eq_ref0 ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found ((eq_ref a) ((cP x4) X)) as proof of (((eq a) ((cP x4) X)) b)
% Found eq_ref000:=(eq_ref00 P):((P ((cP x2) X))->(P ((cP x2) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x2) X))
% Found ((eq_ref0 ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x2))->(P ((cP X) x2)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x2))
% Found ((eq_ref0 ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found eq_ref000:=(eq_ref00 P):((P ((cP x2) X))->(P ((cP x2) X)))
% Found (eq_ref00 P) as proof of (P0 ((cP x2) X))
% Found ((eq_ref0 ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found (((eq_ref a) ((cP x2) X)) P) as proof of (P0 ((cP x2) X))
% Found eq_ref000:=(eq_ref00 P):((P ((cP X) x2))->(P ((cP X) x2)))
% Found (eq_ref00 P) as proof of (P0 ((cP X) x2))
% Found ((eq_ref0 ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found (((eq_ref a) ((cP X) x2)) P) as proof of (P0 ((cP X) x2))
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((ex a) (fun (V:a)=> (((eq a) ((cP V) X)) Y))))
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj a
% EOF
%------------------------------------------------------------------------------